using Pay.TO;
using System;

namespace Pay.Data
{
	/// <summary>
	/// 短信验证码
	/// </summary>
	[Serializable]
	public class SMSVerificationCode
	{
		/// <summary>
		/// 短信记录Id
		/// [主键：√]
		/// [长度：19]
		/// [不允许为空]
		/// </summary>
		public long Id { get; set; }

		/// <summary>
		/// 短信验证码类型
		/// [长度：10]
		/// [不允许为空]
		/// </summary>
		public ESMSVerificationCodeType Type { get; set; }

		/// <summary>
		/// 手机号
		/// [长度：20]
		/// [不允许为空]
		/// </summary>
		public string Mobile { get; set; }

		/// <summary>
		/// 验证码
		/// [长度：20]
		/// [不允许为空]
		/// </summary>
		public string Code { get; set; }

		/// <summary>
		/// 创建时间
		/// [长度：23，小数位数：3]
		/// [不允许为空]
		/// </summary>
		public DateTime CreateTime { get; set; }

        /// <summary>
        /// 来源
        /// </summary>
        public ESMSVerificationCodeSource Source { get; set; }

        /// <summary>
        /// 过期时间
        /// </summary>
        public DateTime ExpirationTime { get; set; }

    }
}
